During connectivity verification, verification tools may receive a connectivity specification that captures the source signal, the destination signal, and the condition (e.g., conditions due to multiplexers) and/or latency (e.g., timing delay due to flip-flops) in which the source and destination signals are connected. The specification may be further translated into a property to be proved or disproved by the verification tools. An earlier challenge arose in providing such connectivity specifications due to the increasing complexities of modern electronic designs. Some conventional approaches provide automatic connectivity extraction that traverses a design description based on structural analyses and aggregates various conditions or latencies during the traversal. Such conventional approaches either provide a simple connectivity specification including merely the source and destination signals or an overly complex connectivity specification listing whatever the traversal encounters in the design description.
These conventional approaches thus produce either an overly simple specification that does not provide much useful information other than the source and destination signals and the conditions or latencies or an overly complex specification that includes overly detailed information in a complex format and arrangement for users to comprehend, especially when the traversal encounters complex logic. In addition, users have little control over or customizations for these conventional automatic extraction approaches. For example, users may not specify one or more source signals (or one or more destination signals) or one or more instances and expect the automatic extraction mechanism to extract the correct outputs for the provided one or more source signals or the one or more instances. User also may not have much control over where the traversal and hence the extraction will stop to produce, for example, partial connectivity for a smaller segment of a net of interest.
Therefore, there exists a need for a method, system, and computer program product for automatic extraction of connectivity information for implementation of electronic designs that provide greater and more flexible controls and customizations for extracting connectivity information that may be further customized with the desired level of details.